Broadly, reporting tools retrieve information about something from a database, and create “reports” allowing a user to organize data so that it can be more easily understood by a layperson. For example, raw or unformatted data may be presented as a graph or a chart.
Currently, most reporting tools use various filtering methods to query a database, run outputs on the resulting data set, and display the information. One approach asks the user to manually enter a range of data to query in the database. This typically requires the user to have understanding of Boolean, SQL, and databases. An alternate approach limits the user to pre-existing choices for the setup of filter-relationships, outputs, and display types through a “wizard” type setup process. Though seemingly more automated, this may limit power or flexibility.